package noten;

import java.util.List;

import android.app.Activity;
import android.graphics.Typeface;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
import de.app.badresden.R;

public class NotenArrayAdapter extends ArrayAdapter<Modul> {

	private Activity context;
	private List<Modul> list;

	public NotenArrayAdapter(Activity context, List<Modul> list) {

		super(context, R.layout.noten_listlayout, list);
		this.context = context;
		this.list = list;
	}

	static class ViewHolder {

		protected TextView textViewBezeichnung;
		protected TextView textViewBewertung;
	}

	@Override
	public View getView(int position, View convertView, ViewGroup parent) {

		View view = null;

		if (convertView == null) {
			LayoutInflater inflator = context.getLayoutInflater();
			view = inflator.inflate(R.layout.noten_listlayout, null);

			final ViewHolder viewHolder = new ViewHolder();
			viewHolder.textViewBezeichnung = (TextView) view
					.findViewById(R.id.notenlistlayout_modulbezeichnung);
			viewHolder.textViewBewertung = (TextView) view
					.findViewById(R.id.notenlistlayout_modulnote);
			view.setTag(viewHolder);
		}
		else
			view = convertView;

		ViewHolder holder = (ViewHolder) view.getTag();
		holder.textViewBezeichnung.setText(list.get(position).getBezeichnung());

		// Bewertungen mit 0.0 als Leerstring
		if (list.get(position).getBewertung() != 0.0) {
			holder.textViewBewertung.setText((list.get(position).getBewertungAsString()));
		}
		else
			holder.textViewBewertung.setText("");

		// Durchschnitt textstyle:bold
		if (holder.textViewBezeichnung.getText().equals(context.getString(R.string.noten_durchschnitt))) {
			holder.textViewBezeichnung.setTypeface(null, Typeface.BOLD);
			holder.textViewBewertung.setTypeface(null, Typeface.BOLD);
		}
		return view;
	}
}